package com.xuanjia.smart_interview.satoken;

import cn.dev33.satoken.stp.StpInterface;
import cn.dev33.satoken.stp.StpUtil;
import com.xuanjia.smart_interview.model.entity.User;
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

import static com.xuanjia.smart_interview.constant.UserConstant.USER_LOGIN_STATE;

@Component
public class StpInterfaceImpl implements StpInterface {

    // 返回一个账号所拥有的权限集合
    @Override
    public List<String> getPermissionList(Object loginId, String s) {
        return new ArrayList<>();
    }

    // 返回账号权限拥有的角色表示集合 （账号与角色分开校验）
        @Override
        public List<String> getRoleList(Object loginId, String s) {
            User user =(User)StpUtil.getSessionByLoginId(loginId).get(USER_LOGIN_STATE);
            return Collections.singletonList(user.getUserRole());
        }
}
